home *** CD-ROM | disk | FTP | other *** search
- // Einseitig federn - Version D1-1.1
-
- //Dieses Skript verbindet die beiden Ebenen in den Einblendmenⁿs durch eine Feder. Ebene 1
- //behΣlt die ursprⁿngliche Geschwindigkeit, wΣhrend Ebene 2 ⁿber eine Feder mit ihr
- //verbunden ist.
-
- // EBENE EIGENSCHAFT KANAL
- // ----- ------------- ------
- // 1: Sich bewegende Ebene Wird nicht berⁿcksichtigt Wird nicht berⁿcksichtigt
- // 2: Mit #1 verbundene Ebene Wird nicht berⁿcksichtigt Wird nicht berⁿcksichtigt
-
- if (time() == start_time) {
-
- rest_length = 10; //LΣnge der Feder im entspannten Zustand in Pixeln
- damp = 0.95; // DΣmpfung (0 = unendlich gro▀, 1 = unendlich klein)
-
- p1 = value(pop_layer(1), position);
- p2 = value(pop_layer(2), position);
-
- last_p1 = tmap(time() - step_time, value(pop_layer(1), position));
- last_p2 = tmap(time() - step_time, value(pop_layer(2), position));
-
- v1 = (p1 - last_p1);
- v2 = (p2 - last_p2);
- } else {
- p1 = value(pop_layer(1), position);
-
- delta = p2 - p1;
- n_delta = normalize(delta);
-
- a = 2 * n_delta * (length(delta) - rest_length) * step_time;
-
- v2 = (v2 - a) * damp;
- v1 = (v1 + a) * damp;
-
- p1 = p1 + v1;
- p2 = p2 + v2;
-
- value(pop_layer(2), position) = p2;
- }